#include "cityattribute.h"
#include "location.h"
#include "core/stringvector.h"
#include "core/ev_string.h"

using namespace EarthView::World::Core;

cityattribute::cityattribute(QWidget *parent, Qt::WFlags flags)
	: QWidget(parent, flags)
{
	ui.setupUi(this);
	setFixedSize(300,420);
}

void cityattribute::setCityMap(const map<EVString,EVString>& citymap)
{
	mCitymap = citymap;
}

void cityattribute::setCity(const EVString& cityName)
{
	map<EVString,EVString>::iterator itr = mCitymap.find(cityName);
	if (itr != mCitymap.end())
	{
		StringVector vec = CStringUtil::split(itr->second, ",");
		if (vec.size() == 14)
		{
			ui.labelsxs->setVisible(true);
			ui.labelsxxian->setVisible(true);
			ui.labelsxzzx->setVisible(true);
			ui.labelsxq->setVisible(true);
			ui.labelsxs->setText(vec[0].c_str());
			ui.labelsxxian->setText(vec[1].c_str());
			ui.labelsxzzx->setText(vec[2].c_str());
			ui.labelsxq->setText(vec[3].c_str());
			ui.labelsxz->setText(vec[4].c_str());
			ui.labelsxxiang->setText(vec[5].c_str());
			ui.labelsxjd->setText(vec[6].c_str());
			ui.labelsxsq->setText(vec[7].c_str());
			ui.labelsxc->setText(vec[8].c_str());
			ui.labelnyrk->setText(vec[9].c_str());
			ui.labelfnyrk->setText(vec[10].c_str());
			ui.labelzrk->setText(vec[11].c_str());
			ui.labelarea->setText(vec[12].c_str());
			ui.labellandarea->setText(vec[13].c_str());
		}
		else if (vec.size() == 10)
		{
			ui.labelsxs->setVisible(false);
			ui.labelsxxian->setVisible(false);
			ui.labelsxzzx->setVisible(false);
			ui.labelsxq->setVisible(false);
			ui.labelsxz->setText(vec[0].c_str());
			ui.labelsxxiang->setText(vec[1].c_str());
			ui.labelsxjd->setText(vec[2].c_str());
			ui.labelsxsq->setText(vec[3].c_str());
			ui.labelsxc->setText(vec[4].c_str());
			ui.labelnyrk->setText(vec[5].c_str());
			ui.labelfnyrk->setText(vec[6].c_str());
			ui.labelzrk->setText(vec[7].c_str());
			ui.labelarea->setText(vec[8].c_str());
			ui.labellandarea->setText(vec[9].c_str());
		}
	}
}

cityattribute::~cityattribute()
{

}
